草庐IT

JavaScript setTimeout 无法访问函数变量

全部标签

javascript - 使用 javascript 在 url 中添加/修改查询字符串/GET 变量

所以我想替换url中的GET变量值,如果该变量不存在,则将其添加到url。编辑:我正在对元素href而不是页面当前位置执行此操作。我不擅长javascript,但我知道如何很好地使用jQuery和javascript的基础知识。我确实知道如何编写正则表达式,但不知道如何使用正则表达式的javascript语法以及将其与哪些函数一起使用。这是我到目前为止的内容,它在第3行确实有错误:在jsfiddle(或以下)上查看:http://jsfiddle.net/MadLittleMods/C93mD/functionaddParameter(url,param,value){varpatte

javascript - 如何创建一个可以在我的 JS 文件之外访问的全局 javascript 对象?

我在JS文件中有以下对象:varIOBreadcrumb=functionIOBreadcrumb(){this.breadcrumbs=[];this.add=function(title,url){varcrumb={title:title,url:url};this.breadcrumbs.push(crumb);};};在另一个JS文件中我想使用这个对象://thisoccursinsomeonclickeventvarbreadcrumb=newIOBreadcrumb();breadcrumb.add('sometitle',url);console.log(breadcr

javascript:确定函数返回类型

javascript有没有办法确定函数的返回类型(如果有)?例子:functiondoSomething(){returntrue;}返回的类型是bool值。示例2:functiondoSomething2(x){if(x=="a")return1;//numberelsereturn"badx";//string} 最佳答案 检查类型是什么:varx=typeofdoSomething2('a');if(x=="string")alert("string")elseif(x=="number")alert("number");el

javascript - 实例变量变为未定义 - CoffeeScript

classGamefoo:nullplay:->@foo=2@animate()animate:->requestAnimationFrame(@animate,1000)console.log('foo=',@foo)$->game=nullinit=->game=newGame()game.play()init()Game中animate方法中的日志产生:富=2foo=未定义因此foo在第一次调用animate时为2,此后未定义。有人可以解释为什么以及如何解决这个问题。非常感谢任何帮助。 最佳答案 当您调用setInterval

javascript - 在全局范围内定义的具有相同名称的变量

谁能解释一下,为什么下一个js代码会出现两个带有“string1”文本的警告窗口,而不是出现第二个带有“undefined”文本的警告窗口??如果两个变量都在同一范围内描述..vara='string1';alert(a);vara;alert(a);​http://jsfiddle.net/FdRSZ/1/谢谢 最佳答案 变量声明(和函数声明)被提升到它们出现的范围的顶部。分配发生在适当的地方。代码有效解释如下:vara;vara;a='string1';例如,考虑一下如果在if语句主体中声明一个变量会发生什么情况:console

javascript - jQuery AJAX 自定义函数和自定义回调?

大家好!我有一个像这样的ajax()调用:$.ajax({type:"post",url:"whatever.php",data:{theData:"moomoo"},success:function(data){console.log(data);}});是否可以将其包装在自定义函数中但保留回调?像这样的东西:functioncustomAjax(u,d,theCallbackStuff){$.ajax({type:"post",url:u,data:d,success:function(data){//RUNtheCallbackStuff}});}theCallbackStuff

javascript - Jquery 将额外的变量传递给排序函数

我需要编写一个通用的排序函数。我正在使用jQuery进行排序。jQuery排序函数只接受两个参数作为输入。但我想将另一个参数传递给该函数。我该怎么做?像这样:obj.sort(StringSort);obj2.sort(StringSort);functionStringSort(a,b,desc){varaText=$(a).attr(desc).toLowerCase();varbText=$(b).attr(desc).toLowerCase();if(aText==bText)return0;returnaText>bText?1:-1;} 最佳答案

javascript - 理解 Eloquent Javascript 的 Reduce 函数

在EloquentJavascript中,作者要求读者编写一个函数countZeroes,它以一个数字数组作为参数并返回出现在这是另一个使用reduce函数的例子。我知道reduce函数的概念是获取一个数组并将其转换为单个值。三元运算符的作用是函数的基本部分。我不知道counter函数的参数来自哪里。摘自本书:functioncountZeroes(array){functioncounter(total,element){//Wherearetheparametervaluescomingfrom?returntotal+(element===0?1:0);}returnreduce

javascript - 无法使用带有解析存在 View 模型的 ko.mapping.fromJSON 解析绑定(bind) js 错误

我想以JSON格式将View模型保存在隐藏字段中。一切正常。但是当我尝试获取它时-我得到错误:UncaughtError:Unabletoparsebindings.Message:ReferenceError:selectAllisnotdefined;Bindingsvalue:checked:AllCheck,click:selectAllJsFiddlerView模型functionAppViewModel(){//Weekthis.AllCheck=ko.observable(false);this.DaysOfWeekResult=ko.observableArray();

javascript - 在 JavaScript 闭包中更改全局变量

我正在尝试更改闭包中变量的值:varmyVariable;$.ajax({//stuff....success:function(data){myVariable=data;}});这不起作用,因为myVariable对闭包不可见。如何更改此代码,以便myVariable的值发生变化? 最佳答案 与您的看法相反,您的代码有效。但是看到您正在尝试做的事情并从字里行间看出我猜您正在尝试这样做:varmyVariable;$.ajax({//stuff....success:function(data){myVariable=data;}